From 3bc6281f2180335983033c6419b2a519c7417f3b Mon Sep 17 00:00:00 2001 From: Ed Sanders Date: Thu, 18 Feb 2016 11:32:11 +0000 Subject: [PATCH] mw.Title/NamespaceInputWidget: Use wgNamespaceIds for namespace constants Avoids duplication of numerical constants. Fix instance of variable changing meaning (ns = ns.toLowerString()). Change-Id: I0e21c51d0e1bdf8340d5d7c927cee7619171e14b --- .../mw.widgets.NamespaceInputWidget.js | 6 +++--- resources/src/mediawiki/mediawiki.Title.js | 17 ++++++++++------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js b/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js index 4f1b874991..c88395e13f 100644 --- a/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js +++ b/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js @@ -40,14 +40,14 @@ mw.widgets.NamespaceInputWidget.prototype.getNamespaceDropdownOptions = function ( config ) { var options, exclude = config.exclude || [], - NS_MAIN = 0; + mainNamespace = mw.config.get( 'wgNamespaceIds' )[ '' ]; options = $.map( mw.config.get( 'wgFormattedNamespaces' ), function ( name, ns ) { - if ( ns < NS_MAIN || exclude.indexOf( Number( ns ) ) !== -1 ) { + if ( ns < mainNamespace || exclude.indexOf( Number( ns ) ) !== -1 ) { return null; // skip } ns = String( ns ); - if ( ns === String( NS_MAIN ) ) { + if ( ns === String( mainNamespace ) ) { name = mw.message( 'blanknamespace' ).text(); } return { data: ns, label: name }; diff --git a/resources/src/mediawiki/mediawiki.Title.js b/resources/src/mediawiki/mediawiki.Title.js index ffb3041d92..c438d058ab 100644 --- a/resources/src/mediawiki/mediawiki.Title.js +++ b/resources/src/mediawiki/mediawiki.Title.js @@ -54,40 +54,42 @@ var + namespaceIds = mw.config.get( 'wgNamespaceIds' ), + /** * @private * @static * @property NS_MAIN */ - NS_MAIN = 0, + NS_MAIN = namespaceIds[ '' ], /** * @private * @static * @property NS_TALK */ - NS_TALK = 1, + NS_TALK = namespaceIds.talk, /** * @private * @static * @property NS_SPECIAL */ - NS_SPECIAL = -1, + NS_SPECIAL = namespaceIds.special, /** * @private * @static * @property NS_MEDIA */ - NS_MEDIA = -2, + NS_MEDIA = namespaceIds.media, /** * @private * @static * @property NS_FILE */ - NS_FILE = 6, + NS_FILE = namespaceIds.file, /** * @private @@ -125,8 +127,9 @@ if ( typeof ns !== 'string' ) { return false; } - ns = ns.toLowerCase(); - id = mw.config.get( 'wgNamespaceIds' )[ ns ]; + // TODO: Should just use local var namespaceIds here but it + // breaks test which modify the config + id = mw.config.get( 'wgNamespaceIds' )[ ns.toLowerCase() ]; if ( id === undefined ) { return false; } -- 2.20.1